import React, { Component } from 'react'
import store from '../store'

console.log(store)
// getState  读取的值为reducer函数的返回值

export default class One extends Component {
    // constructor() {
    //     // subscribe(监听的函数) 用来监听redux中的数据修改
    //     super()
    //     store.subscribe(() => {
    //         console.log('redux中的数据修改了！')
    //         this.setState({})
    //     })
    // }

    del = () => {
        store.dispatch({ type: "DEL" })
    }
    add = () => {
        // store.dispatch()  
        // 1. 参数必须为一个对象
        // 2. 对象中必须有一个type属性
        // 3. 执行dispatch会重新执行reducer函数
        // type  区分通过什么样的方式来修改数据
        store.dispatch({ type: "ADD" })
        // this.setState({})
    }
    render() {
        const { count } = store.getState()
        return (
            <div>
                <button onClick={() => {
                    this.del()
                }}>---</button>
                <h2>
                    我是第一个组件 --- {count}
                </h2>
                <button onClick={() => {
                    this.add()
                }}>+++</button>
            </div>
        )
    }
}
